Click to play narrated presentation
</> A WALKTHROUGH
A TypeDB-powered, ontology-backed notebook for agentic curation — one framework, many domains.
Brief
"The duty of the man who investigates the writings of scientists, if learning the truth is his goal, is to make himself an enemy of all that he reads, and, applying his mind to the core and margins of its content, attack it from every side."
— Ibn al-Haytham · 965–1039 AD
Origin
— 2023
Literature curation
Hand-curated metadata + Pre LLM NLP pipelines for biomedical papers. Brittle, limited, specializes.
2023-2024 (CZI)
Alhazen v1
First pass: langchain agent, nbdev implementation, Metadata curation for CryoET + RNASeq @ Biohub.
Feb 2026 —
Skillful Alhazen
Reimagined around Claude Code, TypeDB 3.x, and a skills marketplace. Domain becomes a plug-in.
Today
CAIS 2026 Demo Paper
Demos:
· Jobhunt — demo
· Tech-recon — curate
· Skill-builder — model
The thesis
— WHAT MOST AGENT HARNESSES DO
Save context to MD files or a RAG index. Adequate for chat, but less powerful when you need to ask structured questions (How many? How much?) or require tracking complex context at scale.
— WHAT SKILLFUL ALHAZEN DOES
Use Claude Skills to store agentic context to a next-generation ontologically-powered knowledge graph (TypeDB).
— the lesson, recalled
Bioinformatics taught us data hygiene 20 years ago. This was the justification for biomedical ontologies previously — the same issues apply now.
The Realization
Solomon Hynes -- AI Engineering World's Fair, 2025
The Base Design
The notebook model
The Alhazen notebook schema is a type hierarchy. Everything inherits from alh-identifiable-entity. Each skill (e.g. job-hunting) extends this basic model.
The curation process
01
Goal Definition
Interview to define success criteria
02
Discovery
Identify candidates, confirm for investigation
03
Ingestion
Collect artifacts: repos, docs, pages, PDFs
04
Sensemaking
Structured note-taking, typed knowledge
05
Analysis
Visualizations, queries, comparisons
06
Reporting
Synthesis against success criteria
Deployment
Skills are git repos. Register a URL, run make build-skills — schema loads into TypeDB, CLI mounts into Claude, dashboard wires into the UI.
Hard problem · one
What's the best way to model a person in the system?
Claude applies formal ontological best practices (Unified Foundational Ontology / OntoUML) to model Person + Roles.
Hard problem · two
Gaps are signal — how the graph grows from use.
Hard problem · three
Claude authors GLAV mapping rules (Fagin, Kolaitis, Miller, Popa 2005) — TypeDB's expressive type system makes both cases tractable.
What's deployed
| Skill | Type | Domain | What it does | UI |
|---|---|---|---|---|
| tech-recon | core | technology reconnaissance | Goal-driven investigation over code repos, papers, docs, web-pages, etc. of a specific technology | ✓ |
| curation-skill-builder | core | domain modeling | Create schema, scripts, and dashboard for a new skill in a new repo | ✓ |
| jobhunt | external | demo for job-hunting | Track positions · fit analysis · skill-gap identification | ✓ |
| coach | external | health tracking demo | Unify Apple Watch, lab reports, doctor notes into one schema | ✓ |
| dismech | external | disease mechanisms | Ingest Monarch Initiative's DisMech project (1000+ curated mechanisms), map to Alhazen schema | ✓ |
| scilit | external | scientific literature | Subcomponent (used by other skills) to provide functionality around scientific publications. | ✓ |
In practice
Disease mechanisms, scientific literature, competitive intelligence, career tracking — one schema-validated store. Each skill contributes its own typed namespace. You can load and combine any of them.
Outcomes
Recognition
CAIS 2026
Accepted Demo paper 1st ACM Conference on Agents and Agentic Systems.
Examples
Working Demos Live examples across domainsPotential use cases for philanthropy, competitive analysis, biocuration, journalism - a viable open source approach for rapid development and prototyping.
Platform
Pragmatic Agentic Toolkit An open source toolkit based on a novel ideaGet started with git clone && make build.